Лабораторная работа №8

Модель TCP/AQM

Кадров Виктор Максимович

Российский университет дружбы народов имени Патриса Лумумбы, Москва, Россия

29 марта 2025

Цель работы

Исследовать модель TCP/AQM с помощью программы xcos и OpenModelica.

Задание

  • реализовать модель TCP/AQM в xcos;
  • реализовать модель TCP/AQM в OpenModelica;
  • построить графики динамики изменения размера TCP окна и размера очереди;
  • построить фазовые портреты.

Теоретическая часть

$$ \dot{W}(t) = \frac{1}{R} - \frac{W(t)W(t-R)}{2R} K Q(t-R) $$

$$ \dot{Q}(t) = \begin{cases} \frac{NW(t)}{R} - C, & Q(t) > 0, \\ \max \left( \frac{NW(t)}{R} - C, 0 \right), & Q(t) = 0. \end{cases} $$

Реализация модели в xcos

В меню Моделирование, Задать переменные окружения зададим значения переменных.

Ввод переменных окружения

Реализация модели в xcos

Для реализации введем выражение, определяющее (t), в блок Expression.

Изменение параметров блока “Expression”

Реализация модели в xcos

Установим начальные значения в блоках интегрирования.

Изменение параметров блоков интегрирования

Реализация модели в xcos

Изменение параметров блоков интегрирования

Реализация модели в xcos

Изменение параметров блока “Continuous fix delay”

Реализация модели в xcos

Параметры моделирования

Реализация модели в xcos

Изменим параметры генерирующих устройств, изменим цвет графиков, масштаб. Так же у блока CSCOPE ставим параметр refresh period = 100.

Параметры блока “CSCOPE”

Реализация модели в xcos

Параметры блока “CSCOPXY”

Реализация модели в xcos

Модель TCP/AQM в xcos

Результаты моделирования в xcos при C = 1

Запустим моделирование и получим следующие графики.

Динамика изменения размера TCP окна W(t)(красная) и размера очереди Q(t)(черная) в xcos. C = 1

Результаты моделирования в xcos при C = 1

Фазовый портрет показывает наличие автоколебаний параметров системы — фазовая траектория осциллирует вокруг своей стационарной точки.

Фазовый портрет (W, Q) в xcos. C = 1

Реализация модели в xcos

Измененные переменные окружения

Результаты моделирования в xcos при C = 0.9

Динамика изменения размера TCP окна W(t)(красная) и размера очереди Q(t)(черная) в xcos. C = 0.9

Результаты моделирования в xcos при C = 0.9

Фазовый портрет (W, Q) в xcos. C = 0.9

Реализация модели в OpenModelica

Реализация модели TCP/AQM в OpenModelica

Реализация модели в OpenModelica

Параметры симуляции в OpenModelica

Результаты моделирования в OpenModelica при C = 1

Динамика изменения размера TCP окна W(t)(синяя) и размера очереди Q(t)(красная) в OpenModelica. C = 1

Результаты моделирования в OpenModelica при C = 1

Фазовый портрет (W, Q) в OpenModelica. C = 1

Реализация модели в OpenModelica

Измененные параметры симуляции в OpenModelica. С = 0.9

Результаты моделирования в OpenModelica при C = 0.9

Динамика изменения размера TCP окна W(t)(синяя) и размера очереди Q(t)(красная) в OpenModelica. C = 0.9

Результаты моделирования в OpenModelica при C = 0.9

Фазовый портрет (W, Q) в OpenModelica. C = 0.9

Выводы

Мы исследовали модель TCP/AQM с помощью программы xcos и OpenModelica.